package com.lemon.cloud.mp.entity;

import com.baomidou.mybatisplus.annotation.*;

import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
    * 微信消息
    */
@Data
@TableName(value = "wx_msg")
public class WxMsg implements Serializable {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 公众号名称
     */
    @TableField(value = "app_name")
    private String appName;

    /**
     * 公众号logo
     */
    @TableField(value = "app_logo")
    private String appLogo;

    /**
     * 微信用户ID
     */
    @TableField(value = "wx_user_id")
    private String wxUserId;

    /**
     * 微信用户昵称
     */
    @TableField(value = "nick_name")
    private String nickName;

    /**
     * 微信用户头像
     */
    @TableField(value = "headimg_url")
    private String headimgUrl;

    /**
     * 消息分类（1、用户发给公众号；2、公众号发给用户；）
     */
    @TableField(value = "type")
    private String type;

    /**
     * 消息类型（text：文本；image：图片；voice：语音；video：视频；shortvideo：小视频；location：地理位置；music：音乐；news：图文；event：推送事件）
     */
    @TableField(value = "rep_type")
    private String repType;

    /**
     * 事件类型（subscribe：关注；unsubscribe：取关；CLICK、VIEW：菜单事件）
     */
    @TableField(value = "rep_event")
    private String repEvent;

    /**
     * 回复类型文本保存文字、地理位置信息
     */
    @TableField(value = "rep_content")
    private String repContent;

    /**
     * 回复类型imge、voice、news、video的mediaID或音乐缩略图的媒体id
     */
    @TableField(value = "rep_media_id")
    private String repMediaId;

    /**
     * 回复的素材名、视频和音乐的标题
     */
    @TableField(value = "rep_name")
    private String repName;

    /**
     * 视频和音乐的描述
     */
    @TableField(value = "rep_desc")
    private String repDesc;

    /**
     * 链接
     */
    @TableField(value = "rep_url")
    private String repUrl;

    /**
     * 高质量链接
     */
    @TableField(value = "rep_hq_url")
    private String repHqUrl;

    /**
     * 图文消息的内容
     */
    @TableField(value = "content")
    private String content;

    /**
     * 缩略图的媒体id
     */
    @TableField(value = "rep_thumb_media_id")
    private String repThumbMediaId;

    /**
     * 缩略图url
     */
    @TableField(value = "rep_thumb_url")
    private String repThumbUrl;

    /**
     * 地理位置维度
     */
    @TableField(value = "rep_location_x")
    private Double repLocationX;

    /**
     * 地理位置经度
     */
    @TableField(value = "rep_location_y")
    private Double repLocationY;

    /**
     * 地图缩放大小
     */
    @TableField(value = "rep_scale")
    private Double repScale;

    /**
     * 已读标记（1：是；0：否）
     */
    @TableField(value = "read_flag")
    private String readFlag;

    /**
     * 公众号ID
     */
    @TableField(value = "app_id")
    private String appId;

    /**
     * 微信唯一标识
     */
    @TableField(value = "open_id")
    private String openId;

    /**
     * 备注
     */
    @TableField(value = "remark")
    private String remark;

    /**
     * 逻辑删除标记（0：显示；1：隐藏）
     */
    @TableLogic
    private String delFlag;

    /**
     * 创建时间
     */
    @TableField(value = "create_time")
    private Date createTime;

    /**
     * 更新时间
     */
    @TableField(value = "update_time")
    private Date updateTime;

    /**
     * 租户ID
     */
    @TableField(value = "tenant_id")
    private Integer tenantId;

    public static final String COL_ID = "id";

    public static final String COL_APP_NAME = "app_name";

    public static final String COL_APP_LOGO = "app_logo";

    public static final String COL_WX_USER_ID = "wx_user_id";

    public static final String COL_NICK_NAME = "nick_name";

    public static final String COL_HEADIMG_URL = "headimg_url";

    public static final String COL_TYPE = "type";

    public static final String COL_REP_TYPE = "rep_type";

    public static final String COL_REP_EVENT = "rep_event";

    public static final String COL_REP_CONTENT = "rep_content";

    public static final String COL_REP_MEDIA_ID = "rep_media_id";

    public static final String COL_REP_NAME = "rep_name";

    public static final String COL_REP_DESC = "rep_desc";

    public static final String COL_REP_URL = "rep_url";

    public static final String COL_REP_HQ_URL = "rep_hq_url";

    public static final String COL_CONTENT = "content";

    public static final String COL_REP_THUMB_MEDIA_ID = "rep_thumb_media_id";

    public static final String COL_REP_THUMB_URL = "rep_thumb_url";

    public static final String COL_REP_LOCATION_X = "rep_location_x";

    public static final String COL_REP_LOCATION_Y = "rep_location_y";

    public static final String COL_REP_SCALE = "rep_scale";

    public static final String COL_READ_FLAG = "read_flag";

    public static final String COL_APP_ID = "app_id";

    public static final String COL_OPEN_ID = "open_id";

    public static final String COL_REMARK = "remark";

    public static final String COL_DEL_FLAG = "del_flag";

    public static final String COL_CREATE_TIME = "create_time";

    public static final String COL_UPDATE_TIME = "update_time";

    public static final String COL_TENANT_ID = "tenant_id";
}
